package com.atguigu.gmall.weball.controller;


import com.atguigu.gmall.feign.item.SkuDetailFeignClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

import java.util.Map;

/**
 * 商品详情控制器
 */
@Controller
public class ItemController {


    @Autowired
    SkuDetailFeignClient skuDetailFeignClient;
    /**
     * 商品详情
     * @param skuId
     * @return
     */
    @GetMapping("/{skuId}.html")
    public String itemDetails(@PathVariable("skuId") Long skuId, Model model){

        //准备好以下数据
        //1、categoryView（category1Id、category1Name、category2Id、category2Name、category3Id、category3Name）
        // 代表当前sku 所在的完整分类信息

        //2、skuInfo（skuName、id、skuDefaultImg、skuImageList.....）  代表当前sku的详情，来源于数据库sku_info表

        //3、price 单独查一下

        //4、spuSaleAttrList 当前sku对应的spu的所有销售属性值组合;


        //5、valuesSkuJson   包含了每一种销售属性组合对应是哪个skuId。方便浏览器跳转

        Map<String, Object> map = skuDetailFeignClient.itemDetail(skuId);

        //添加单个键值
//        model.addAttribute("categoryView",map.get("categoryView"));
//        model.addAttribute("skuInfo",map.get("skuInfo"));

        //添加全体键值
        model.addAllAttributes(map);
        //转到详情页
        return "item/index";
    }
}
